package com.SuanFa.test;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class test7 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int i = sc.nextInt();
        int a = sc.nextInt();
        int[] nums = new int[i];
        String[] str = new String[i];
        for (int j = 0; j < i; j++) {
            nums[j] = sc.nextInt();
            str[j] = sc.next();
        }
        Map<Integer, Map<Integer, Integer>> map = new HashMap<>();
        for (int j = 0; j < a; j++) {
            Map<Integer, Integer> map1 = new HashMap<>();
            map1.put(sc.nextInt(), sc.nextInt());
            map.put(j, map1);
        }
        int temp = 0;
        for (int j = 0; j < a; j++) {
            Map<Integer, Integer> integerIntegerMap = map.get(j);
            if (integerIntegerMap.get(0) != null) {
                //0表示左手，1表示右手
                //左手
//                int temp1 = temp < 0 ? nums.length + temp : temp;
                int temp1 = temp < 0 ? Math.abs(str.length + temp) / str.length : temp / str.length;
                if (nums[temp1] == 0) {
                    //0表示朝圈内，1表示朝圈外
                    temp -= integerIntegerMap.get(0);
                } else {
                    temp += integerIntegerMap.get(0);
                }
            } else {
                //右手
                int temp1 = temp < 0 ? Math.abs(str.length + temp) / str.length : temp / str.length;
                if (nums[temp1] == 0) {
                    //0表示朝圈内，1表示朝圈外
                    temp += integerIntegerMap.get(1);
                } else {
                    temp -= integerIntegerMap.get(1);
                }
            }
        }
        if (temp >= 0) {
            System.out.println(str[temp / str.length]);
        } else {
            System.out.println(str[Math.abs(str.length + temp) / str.length]);
        }
    }
}
